MySQL

您所在的位置:网站首页 python 每天增长 MySQL

MySQL

2023-12-05 03:56| 来源: 网络整理| 查看: 265

目录

问题描述

问题分析

解决方案

扩展方案

参考文章

 

问题描述

使用SQL统计某个表每天的总量和增量MySQL数据库

例:一个user表 有user_id自增主键,还有create_time用户创建时间  

业务需求:让你统计每天用户的总量和相比前一天增加了多少用户量

问题分析

 

解决方案

首先将每天的总量查出来 表中的时间一般为date_time类型  所以用个函数 

SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d')

将上一个SQL作为一个统计表来计算增量  上SQL。

SELECT a.dd,a.num,SUM(lt.num) AS cum FROM (SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d')) a JOIN (SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d')) lt ON a.dd >= lt.dd GROUP BY dd

dd7ab24069748878d639fd7a69107f74.png-wh_(表一)af70e661afde991f19cdc09787650067.png-wh_(表二)

注:

时间戳格式

FROM_UNIXTIME(create_time,'%Y-%m-%d') as time

日期格式

DATE_FORMAT(create_time,'%Y-%m-%d') as time 扩展方案

创建MySQL数据库定时任务,每天数据更新,实现数据持久化,减少不必要的算力。

参考文章

https://blog.csdn.net/a114469/article/details/80704590

https://blog.51cto.com/woniu123/1979970

https://www.cnblogs.com/manger/p/12574834.html

https://www.cnblogs.com/javahr/p/9664203.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3